In recent years, there has been an increasing need for systems and methods of transcoding video bitstreams, due in no small part to the growing diversity of available multimedia applications, multimedia networks, video coding standards, video displays, etc. For example, the H.264 video coding standard has provided significant enhancements in coding efficiency over earlier video coding standards, and has been widely employed in multimedia applications such as real-time video communications and video streaming. Because multimedia applications such as video streaming generally allow significant delays (e.g., up to 5 seconds or more) to be incorporated in the video bitstream transcoding process, conventional video transcoding systems have typically employed a so-called “look-ahead” approach to video transcoding, taking time to analyze “future” video frames in the video bitstream to provide improved bit allocations for the video frames currently being transcoded, thereby enhancing overall perceptual quality. In general, for video transcoding systems employing the look-ahead approach, the bit allocation for a current video frame typically improves as the number of future video frames available for analysis increases.
Conventional video transcoding systems employing look-ahead approaches to video transcoding have drawbacks, however, in that the system resources may strictly limit the number of future video frames that can be stored and analyzed. For example, in a look-ahead approach that allows at least 5 seconds of delay, a conventional video transcoding system receiving an input video bitstream at 30 frames per second (fps) would need to store at least 150 video frames for subsequent analysis before any video frames in the input bitstream could be transcoded. Nevertheless, constraints imposed by the system resources may make such storage of video frames by the conventional video transcoding system impractical, if not impossible.
It would therefore be desirable to have improved systems and methods of transcoding video bitstreams that avoid the drawbacks of conventional video transcoding systems.